Skip to content

Fix GH-22071: JIT assertion on abstract static method call.#22082

Open
devnexen wants to merge 1 commit into
php:PHP-8.5from
devnexen:gh22071
Open

Fix GH-22071: JIT assertion on abstract static method call.#22082
devnexen wants to merge 1 commit into
php:PHP-8.5from
devnexen:gh22071

Conversation

@devnexen
Copy link
Copy Markdown
Member

The optimizer's ZEND_INIT_STATIC_METHOD_CALL handling returned the function entry even when the resolved method was abstract, leading the JIT to assert on a null address in jit_CONST_FUNC_PROTO when emitting a direct call (e.g. UnitEnum::cases()).

The optimizer's ZEND_INIT_STATIC_METHOD_CALL handling returned the
function entry even when the resolved method was abstract, leading
the JIT to assert on a null address in jit_CONST_FUNC_PROTO when
emitting a direct call (e.g. UnitEnum::cases()).
Copy link
Copy Markdown
Member

@arnaud-lb arnaud-lb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks right to me, but maybe wait for an other review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Assertion failure jit_CONST_FUNC_PROTO at ext/opcache/jit/zend_jit_ir.c

2 participants